<?xml version="1.0"?>
<doc>
    <assembly>
        <name>FParsecCS</name>
    </assembly>
    <members>
        <member name="M:FParsec.Buffer.PositiveDistance(System.Char*,System.Char*)">
            <summary>Calculates: end - begin. <br />
            Precondition: 2^31 > end - begin >= 0.</summary>
        </member>
        <member name="M:FParsec.Buffer.PositiveDistance64(System.Char*,System.Char*)">
            <summary>Calculates: end - begin. <br />
            Precondition: end - begin >= 0.</summary>
        </member>
        <member name="M:FParsec.Buffer.Copy(System.Byte*,System.Byte*,System.Int32)">
            <summary>Copies size bytes from src to dst. Correctly handles overlapped memory blocks.</summary>
        </member>
        <member name="T:FParsec.CharStreamIndexToken">
            <summary>An opaque representation of a CharStream index.</summary>
        </member>
        <member name="P:FParsec.CharStreamIndexToken.Block">
            <summary>Returns -1 if the IndexToken was zero-initialized.</summary>
        </member>
        <member name="T:FParsec.CharStream">
            <summary>Provides read‐access to a sequence of UTF‐16 chars.</summary>
        </member>
        <member name="F:FParsec.CharStream.Ptr">
            <summary>Points to the current char in Buffer,
            or is null if the end of the stream has been reached.</summary>
        </member>
        <member name="F:FParsec.CharStream.PtrBegin">
            <summary>Equals Ptr == null ? null : BufferBegin.</summary>
        </member>
        <member name="F:FParsec.CharStream.PtrEnd">
            <summary>Equals Ptr == null ? null : BufferEnd.</summary>
        </member>
        <member name="F:FParsec.CharStream.BufferBegin">
            <summary>Begin of the used part of the char buffer. Is constant. Is null if the CharStream is empty.</summary>
        </member>
        <member name="F:FParsec.CharStream.BufferEnd">
            <summary>End of the used part of the char buffer. Varies for a multi-block stream. Is null if the CharStream is empty.</summary>
        </member>
        <member name="F:FParsec.CharStream.Block">
            <summary>The block currently loaded in the buffer.</summary>
        </member>
        <member name="F:FParsec.CharStream.StateTag">
            <summary>Any CharStream method or property setter increments this value when it changes the CharStream state.
            Backtracking to an old state also restores the old value of the StateTag.</summary>
        </member>
        <member name="F:FParsec.CharStream.BufferString">
            <summary>The string holding the char buffer, or null if the buffer is not part of a .NET string.</summary>
        </member>
        <member name="F:FParsec.CharStream.BufferStringPointer">
            <summary>A pointer to the beginning of BufferString, or null if BufferString is null.</summary>
        </member>
        <member name="F:FParsec.CharStream.BufferHandle">
            <summary>Holds the GCHandle for CharStreams directly constructed from strings or char arrays.</summary>
        </member>
        <member name="F:FParsec.CharStream.StringBuffer">
            <summary>Holds the StringBuffer for CharStreams constructed from a binary stream.</summary>
        </member>
        <member name="F:FParsec.CharStream.DoNotRoundUpBlockSizeToSimplifyTesting">
            <summary>we modify this flag via reflection in the unit test</summary>
        </member>
        <member name="M:FParsec.CharStream.Seek(System.Int64)">
            <summary>Returns an iterator pointing to the given index in the stream,
            or to the end of the stream if the indexed position lies beyond the last char in the stream.</summary>
            <exception cref="T:System.ArgumentOutOfRangeException">The index is negative or less than the BeginIndex.</exception>
            <exception cref="T:System.NotSupportedException">Accessing the char with the given index requires seeking in the underlying byte stream, but the byte stream does not support seeking or the Encoding's Decoder is not serializable.</exception>
            <exception cref="T:System.IO.IOException">An I/O error occured.</exception>
            <exception cref="T:System.ArgumentException">The input stream contains invalid bytes and the encoding was constructed with the throwOnInvalidBytes option.</exception>
            <exception cref="T:System.Text.DecoderFallbackException">The input stream contains invalid bytes for which the decoder fallback threw this exception.</exception>
            <exception cref="T:System.OutOfMemoryException">Can not allocate enough memory for the internal data structure.</exception>
            <exception cref="T:System.ObjectDisposedException">Method is called after the stream was disposed.</exception>
        </member>
        <member name="P:FParsec.CharStream.IndexOfFirstChar">
            <summary>The index of the first char in the stream.</summary>
        </member>
        <member name="P:FParsec.CharStream.Line">
            <summary>The line number for the next char. (The line count starts with 1.)</summary>
        </member>
        <member name="P:FParsec.CharStream.LineBegin">
            <summary>The stream index of the first char of the line that also contains the next char.</summary>
        </member>
        <member name="P:FParsec.CharStream.Column">
            <summary>The UTF‐16 column number of the next char, i.e. Index ‐ LineBegin  + 1.</summary>
        </member>
        <member name="P:FParsec.CharStream.Encoding">
            <summary>The Encoding that is used for decoding the underlying byte stream, or
            System.Text.UnicodeEncoding in case the stream was directly constructed
            from a string or char buffer.</summary>
        </member>
        <member name="F:FParsec.CharStream.BlockInfo.ByteIndex">
            <summary>the byte stream index of the first char in the block after the OverhangCharsAtBlockBegin</summary>
        </member>
        <member name="F:FParsec.CharStream.BlockInfo.ByteBufferIndex">
            <summary>the value of the CharStream's ByteBufferIndex before the block is read</summary>
        </member>
        <member name="F:FParsec.CharStream.BlockInfo.NumberOfBytesInOverlap">
            <summary>the number of bytes in the stream from ByteIndex to the first char after the OverhangCharsAfterOverlap</summary>
        </member>
        <member name="F:FParsec.CharStream.BlockInfo.LastCharInOverlap">
            <summary>the last char in the overlap with the previous block (used for integrity checking)</summary>
        </member>
        <member name="F:FParsec.CharStream.BlockInfo.OverhangCharsAtBlockBegin">
            <summary>chars at the block begin that were already read together with chars of the last block before the overlap</summary>
        </member>
        <member name="F:FParsec.CharStream.BlockInfo.OverhangCharsAfterOverlap">
            <summary>chars after the overlap with the previous block that were already read together with the overlap chars</summary>
        </member>
        <member name="T:FParsec.CharStream.MultiBlockData">
            <summary>Contains the data and methods needed in case the input byte stream
            is large enough to span multiple blocks of the CharStream.</summary>
        </member>
        <member name="F:FParsec.CharStream.MultiBlockData.LastBlock">
            <summary>The index of the last block of the stream, or Int32.MaxValue if the end of stream has not yet been detected.</summary>
        </member>
        <member name="F:FParsec.CharStream.MultiBlockData.RegexSpaceThreshold">
            <summary>BufferBegin + BlockSize - minRegexSpace</summary>
        </member>
        <member name="M:FParsec.CharStream.MultiBlockData.FillByteBuffer">
            <summary>Refills the ByteBuffer if no unused byte is remaining.
            Returns the number of unused bytes in the (refilled) ByteBuffer.</summary>
        </member>
        <member name="M:FParsec.CharStream.MultiBlockData.ClearAndRefillByteBuffer(System.Int32)">
            <summary>Refills the ByteBuffer starting at the given index. If the underlying byte
            stream contains enough bytes, the ByteBuffer is filled up to the ByteBuffer.Length.
            Returns the number of bytes available for consumption in the refilled ByteBuffer.</summary>
        </member>
        <member name="M:FParsec.CharStream.MultiBlockData.ReadCharsFromStream(System.Char*,System.Int32,System.String@)">
            <summary>Reads up to the given maximum number of chars into the given buffer.
            If more than the maximum number of chars have to be read from the stream in order to
            fill the buffer (due to	the way the Decoder API works), the overhang chars are
            returned through the output parameter.
            Returns a pointer to one char after the last char read.</summary>
        </member>
        <member name="M:FParsec.CharStream.MultiBlockData.ReadBlock(System.Int32)">
            <summary> Reads a block of chars (which must be different from the current block)
            into the BufferString. If the current CharStream block is block - 1, this method
            seeks the CharStream to the first char after the overlap of the two blocks.
            Otherwise it seeks the CharStream to the first char in the block. It returns the
            CharStream.Ptr value at the new position (which can be null).</summary>
        </member>
        <member name="P:FParsec.CharStream.MultiBlockData.ByteIndex">
            <summary>The byte stream index of the first unused byte in the ByteBuffer.</summary>
        </member>
        <member name="T:FParsec.CharStream`1">
            <summary>Provides read‐access to a sequence of UTF‐16 chars.</summary>
        </member>
        <member name="T:FParsec.Cloning.CloneImage">
            <summary>Contains the serialized state of on object.</summary>
        </member>
        <member name="M:FParsec.Cloning.CloneImage.CreateClone">
            <summary>Deserializes the object state into a new object.</summary>
        </member>
        <member name="M:FParsec.Cloning.Cloner.Create(System.Type)">
            <summary>Returns a cloner for the given <em>run-time</em> type.</summary>
            <param name="type">The run-time type of the objects to clone. The type must be serializable.</param>
        </member>
        <member name="M:FParsec.Cloning.Cloner.Clone(System.Object)">
            <summary>Copies the given object using the serialization API.</summary>
            <param name="instance">The object to clone. instance.GetType() must equal the Type the Cloner was created for.</param>
        </member>
        <member name="M:FParsec.Cloning.Cloner.CaptureImage(System.Object)">
            <summary>Returns an image of the given object instance.</summary>
            <param name="instance">The object to capture an image of.</param>
        </member>
        <member name="M:FParsec.Cloning.Cloner.GetSerializedFields(System.Type,System.Boolean@)">
            <summary>Returns the public and non-public fields of the type (and its base types),
            except fields with the NonSerialized attribute. In the returned array fields from
            derived types come before fields from base types.</summary>
        </member>
        <member name="M:FParsec.Cloning.Cloner.FindStronglyConnectedComponents(FParsec.Cloning.Cloner.State[])">
            <summary>Fills the Strongly StronglyConnectedComponent fields of the
            states passed in the array. Returns an array mapping each state to an
            integer component identifier.
            </summary>
            <param name="states">The object states to traverse. The object with array index
            0 is ignored. All other objects are assumed to be reachable from the object
            with array index 1.</param>
        </member>
        <member name="M:FParsec.Cloning.Cloner.ComputeTopologicalOrder(FParsec.Cloning.Cloner.State[])">
            <summary>Returns an array with the topologically sorted indices of the states.
            In the returned array the indices of states belonging to the same strongly
            connected component are adjacent (but the order within a strongly connected
            component is undefined).
            </summary>
            <param name="states">The object states to traverse. The object with array index
            0 is ignored. All other objects are assumed to be reachable from the object
            with array index 1.</param>
        </member>
        <member name="F:FParsec.Cloning.Cloner.State.EventHandlers">
            <summary>May be null.</summary>
        </member>
        <member name="F:FParsec.Cloning.Cloner.State.ObjectIndices">
            <summary>Indices of nested objects in the object graph. May be null.</summary>
        </member>
        <member name="F:FParsec.Cloning.Cloner.State.StronglyConnectedComponent">
            <summary>May be null.</summary>
        </member>
        <member name="M:FParsec.FastGenericEqualityERComparer`1.Equals(`0,`0)">
            <summary>For reference types it's faster to call Instance.Equals directly
            (due to limitations of the inliner of the .NET JIT.)</summary>
        </member>
        <member name="T:FParsec.FastGenericEqualityERComparer.ArrayStructuralEqualityERComparer`1">
            <summary>Forwards all work to F#'s GenericEqualityERComparer.</summary>
        </member>
        <member name="M:FParsec.IdentifierValidator.ValidateAndNormalize(System.String,System.Int32@)">
            <summary>Returns the normalized string, or null in case an invalid identifier
            character is found. If an invalid character is found, the string index of the
            invalid character is assigned to the out parameter, otherwise -1.</summary>
        </member>
        <member name="F:FParsec.OperatorPrecedenceParser`3.OpsArrayLength">
            <summary>The length of LhsOps and RhsOps. Must be a power of 2.</summary>
        </member>
        <member name="F:FParsec.OperatorPrecedenceParser`3.ErrorOp">
            <summary>ParsePrefixOp returns this value to signal that it backtracked and we should try to parse a term.</summary>
        </member>
        <member name="F:FParsec.OperatorPrecedenceParser`3.ZeroPrecedenceOperatorData">
            <summary>Can not be readonly because it is passed as as a ref (for performance reasons), but it is never mutated.</summary>
        </member>
        <member name="M:FParsec.OperatorPrecedenceParser`3.ParsePrefixOp(FParsec.OperatorPrecedenceParser{`0,`1,`2}.OperatorData@,FParsec.Operator{`0,`1,`2},FParsec.Reply{`0}@,FParsec.CharStream{`2})">
            <summary>Parses the following prefix operators, plus the expression the operators apply to.</summary>
        </member>
        <member name="M:FParsec.OperatorPrecedenceParser`3.ParseExpressionContinue(FParsec.OperatorPrecedenceParser{`0,`1,`2}.OperatorData@,FParsec.Operator{`0,`1,`2},FParsec.Reply{`0}@,FParsec.CharStream{`2})">
            <summary>Parses (higher-precedence) infix and postfix operators after the first term, together with the argument expressions.</summary>
        </member>
        <member name="T:FParsec.StringBuffer">
            <summary>A substring of a pinned string on the large object heap.
            StringBuffers are cached in a pool and hence need to be properly disposed.</summary>
        </member>
        <member name="F:FParsec.StringBuffer.Allocated">
            <summary>Sum of the lengths of all currently allocated StringBuffers</summary>
        </member>
        <member name="F:FParsec.StringBuffer.PoolSegment.Last">
            <summary>the last allocated segment</summary>
        </member>
        <member name="P:FParsec.StringBuffer.PoolSegment.Size">
            <summary>String.Length - x, where x > 0</summary>
        </member>
        <member name="M:FParsec.Text.DetectPreamble(System.Byte[],System.Int32,System.Text.Encoding@,System.Boolean)">
            <summary>Detects the presence of an encoding preamble in the first count bytes of the byte buffer.
            If detectEncoding is false, this function only searches for the preamble of the given default encoding,
            otherwise also for any of the standard unicode byte order marks (UTF-8, UTF-16 LE/BE, UTF-32 LE/BE).
            If an encoding different from the given default encoding is detected, the new encoding
            is assigned to the encoding reference.
            Returns the number of bytes in the detected preamble, or 0 if no preamble is detected.
            </summary>
        </member>
        <member name="M:FParsec.Text.ReadAllRemainingCharsFromStream(System.Char*,System.Int32,System.Byte[],System.Int32,System.Int32,System.IO.Stream,System.Int64,System.Text.Decoder,System.Boolean)">
            <summary>Reads all remaining chars into the given buffer. If the remaining stream
            content holds more than the given maximum number of chars, an exception will be thrown.</summary>
        </member>
        <member name="M:FParsec.Text.FoldCase(System.String)">
            <summary>Returns a case-folded copy of the string argument. All chars are mapped
            using the (non-Turkic) 1-to-1 case folding mappings (v. 6.0) for Unicode code
            points in the Basic Multilingual Plane, i.e. code points below 0x10000.
            If the argument is null, null is returned.</summary>
        </member>
        <member name="M:FParsec.Text.NormalizeNewlines(System.String)">
            <summary>Returns the given string with all occurrences of "\r\n" and "\r" replaced
            by "\n". If the argument is null, null is returned.</summary>
        </member>
        <member name="M:FParsec.Text.CountTextElements(System.String)">
            <summary>A faster implementation of System.Globalization.StringInfo(str).LengthInTextElements.</summary>
        </member>
        <member name="M:FParsec.Text.IsWhitespace(System.Char)">
            <summary>A faster implementation of System.Char.IsWhiteSpace.</summary>
        </member>
        <member name="T:FParsec.UnmanagedMemoryPool">
            <summary>
            Allocates and keeps references to chunks of unmanaged memory that we
            intend to keep around for the lifetime of the AppDomain.
            </summary>
        </member>
    </members>
</doc>
